1 Introdução

O pacote RHCgen surge como uma ferramenta essencial para a automação e padronização do processamento de dados do Registro Hospitalar de Câncer (RHC) no Brasil, atendendo à crescente demanda por pesquisas oncológicas robustas e reprodutíveis. Atualmente, o Brasil possui bases de dados relevantes como o RHC e o Registros de Câncer de Base Populacional (RCBP), ambos geridos pelo Instituto Nacional do Câncer (INCA). No entanto, a manipulação dos dados do RHC enfrenta desafios devido à complexidade e heterogeneidade das informações. Embora a ferramenta TabWin, desenvolvida pelo DATASUS, seja amplamente utilizada para tabulação desses dados, ela é limitada ao sistema operacional Windows e oferece capacidades analíticas restritas, exigindo que pesquisadores exportem dados para pacotes estatísticos mais robustos.

A linguagem R, amplamente utilizada para análise estatística, oferece uma oportunidade significativa de melhoria ao permitir o processamento eficiente e a manipulação de grandes volumes de dados heterogêneos, típicos em estudos de epidemiologia. Ferramentas como o pacote Microdatasus já facilitam o acesso a dados de saúde pública no Brasil, mas até o momento, não existia um pacote específico para o RHC. O desenvolvimento do RHCgen busca preencher essa lacuna, permitindo que pesquisadores automatizem e padronizem o processamento de dados clínicos e de tratamento de pacientes oncológicos atendidos pelo Sistema Único de Saúde (SUS), tornando o processo de análise de dados mais eficiente, reprodutível e livre de erros.

Com a criação do RHCgen, espera-se uma melhoria significativa na agilidade e precisão da análise dos dados do RHC, promovendo maior reprodutibilidade nas pesquisas e a geração de evidências científicas robustas na área de oncologia. A iniciativa reduz a dependência de ferramentas limitadas e processos manuais, além de proporcionar uma integração mais fluida dos dados em projetos de pesquisa, otimizando o tempo de análise e garantindo resultados mais confiáveis. Esse pacote em R visa facilitar o acesso aberto aos dados e apoiar o desenvolvimento de pesquisas oncológicas no Brasil.

1.1 Pre-requisitos:

Para utilizar o pacote, é necessário primeiro baixar os arquivos no formato DBF com os dados de câncer do IntegradorRHC do INCA. O processo pode ser realizado em alguns passos. Primeiro, o usuário deve acessar o site do IntegradorRHC (https://irhc.inca.gov.br/RHCNet/visualizaTabNetExterno.action). No menu “Tabulador Hospitalar”, acessar o botão de “Download”. Uma nova janela será aberta automaticamente, na qual o usuário deve selecionar o botão “Base de dados de todos os estados” e clicar em “Enviar”. Na próxima janela, deve selecionar “Modelo do arquivo de definição para tabwin* (def)”, escolher todos os anos que deseja incluir no banco de dados e clicar em “Enviar”. Assim, o download dos arquivos será iniciado, com a mensagem: “Seu Download está sendo gerado! Por favor, aguarde…”. Após o download, os arquivos serão salvos na pasta de downloads do computador.

Esses arquivos chegam compactados; o usuário deve descompactar e transferir todos os arquivos com extensão “.dbf” (ex.: rhc18.dbf, rhc19.dbf, rhc20.dbf) para o diretório de trabalho em uso no RStudio. Isso é necessário para que o pacote RHCgen possa ler os arquivos corretamente.

Caso não seja necessário, no Rstudio vá em Session; Set Working Diretory; Choose Directory…. E escolha onde a parta onde os arquivos estão.

Figura 1: A figura mostra como os arquivos devem ficar na mesma pasta de trabalho do RStudio
Figura 1: A figura mostra como os arquivos devem ficar na mesma pasta de trabalho do RStudio

1.2 Instalação

O pacote está disponível no GitHub e pode ser instalado com o seguinte comando:

# Obs.: É necessário ter instalado previamente o pacote "remotes".

# Instalando o "remotes": 
install.packages("remotes")


# Instalar o RHCgen via GitHub

remotes::install_github("andersonlineu/RHCgen")

Para garantir o funcionamento correto, também é necessário ter o pacote foreign instalado para a leitura de arquivos DBF. O RHCgen irá verificar se esse pacote está instalado e, se necessário, fará a instalação automaticamente.

1.3 Carregar o Pacote

Depois de instalar o RHCgen, você pode carregá-lo no R com o seguinte comando:

library(RHCgen)

Use o Help para encontrar outras explicações.


2 Automatizar o Processamento de Dados

A função construir_banco() facilita o processo de manipulação dos dados do RHC ao integrar várias operações em um único comando. Essa função realiza a leitura, combinação, renomeação de colunas, modificação de tipos de variáveis, recodificação, e ajustes de códigos CID-O, CNES e outros. Ela também realiza análises de completude e verifica inconsistências nos dados.

A função construir_banco foi desenvolvida para automatizar a preparação de dados, consolidando diversas etapas essenciais em um único fluxo de execução. Durante sua operação, essa função chama internamente todas as subfunções necessárias para realizar transformações e verificações detalhadas. Essas operações incluem a leitura e fusão de arquivos DBF, padronização de nomes de colunas, conversão de tipos de variáveis, recodificação de variáveis categóricas, mapeamento de siglas de estados, ajustes de códigos CID-O, CNES, tipo histológico, clínicas de atendimento e tratamento, estadiamento clínico, além de realizar uma análise da completude e consistência dos dados.

Caso queira, o usuário tem a flexibilidade de executar cada função subjacente de forma isolada, proporcionando controle granular sobre o pipeline de manipulação dos dados, conforme a necessidade. Alternativamente, a função construir_banco() oferece uma solução integrada, consolidando todas essas operações em um único comando, automatizando o processamento de forma prática e eficiente. Assim, a função se ajusta tanto à conveniência de um processo automatizado quanto à exigência de maior controle nas etapas individuais, adaptando-se a diferentes necessidades analíticas.

A função presume que os arquivos no diretório especificado estão presentes e devidamente nomeados. Eventuais problemas, como ausência ou inconsistência de arquivos, são tratados implicitamente, mas a operação correta depende da correta organização do diretório.

2.1 Exemplo de Uso

# Automatizar a preparação do banco de dados do RHC
dados_RHC_combinados <- construir_banco()

O processo inicia listando todos os arquivos com extensão “.dbf” no diretório de trabalho, cujos nomes começam com “rhc”. Após essa etapa, o script verifica se todas as colunas desses arquivos possuem a mesma estrutura. Se houver consistência, os arquivos são combinados em um único dataframe. Caso contrário, o usuário será notificado sobre o erro que impediu o processamento, seja pela falta de arquivos ou por inconsistências entre os dados.

Figura 1: Esta imagem mostra o resultado final da construção do banco de dados no RStudio, utilizando o pacote RHCgen, onde foi executada a função construir_banco() para preparar um banco de dados de registros hospitalares de câncer no Brasil com um recorte temporal de 4 anos (2019-2022), resultando em 678.953 registros e 59 variáveis, além de um gráfico de barras que ilustra a completude dos dados por variável.
Figura 1: Esta imagem mostra o resultado final da construção do banco de dados no RStudio, utilizando o pacote RHCgen, onde foi executada a função construir_banco() para preparar um banco de dados de registros hospitalares de câncer no Brasil com um recorte temporal de 4 anos (2019-2022), resultando em 678.953 registros e 59 variáveis, além de um gráfico de barras que ilustra a completude dos dados por variável.


3 Filtrar os Dados com Base em Vários Critérios

3.1 Descrição

A função filtrar_banco() filtra um dataframe com base em critérios específicos fornecidos pelo usuário, como códigos CID-3, CID-4, anos de triagem, anos de diagnóstico, anos da primeira consulta, idade, tipo de caso, sexo, estado de residência, unidade hospitalar, primeiro tratamento hospitalar, ano de início do tratamento, origem do encaminhamento e anos do banco de dados.

3.2 Sintaxe

filtrar_banco(
  dados = Seu_data_frame_aqui,
  cid3digitos = NULL,
  cid4digitos = NULL,
  ano_inicio_triagem = NULL,
  ano_fim_triagem = NULL,
  ano_inicio_diagnostico = NULL,
  ano_fim_diagnostico = NULL,
  ano_inicio_primeira_consulta = NULL,
  ano_fim_primeira_consulta = NULL,
  idade_inicio = NULL,
  idade_fim = NULL,
  tipo_de_caso = NULL,
  sexo = NULL,
  estado_residencia = NULL,
  uf_unidade_hospital = NULL,
  primeiro_tratamento_hospital = NULL,
  ano_inicio_tratamento = NULL,
  ano_fim_tratamento = NULL,
  origem_do_encaminhamento = NULL,
  ano_do_banco_inicio = NULL,
  ano_do_banco_fim = NULL
)

3.2.1 Argumentos

  • dados: Um dataframe que contém as variáveis a serem filtradas.
  • cid3digitos: Um vetor de códigos CID-3 para filtrar a coluna Localizacao_Primaria_3D. Padrão é NULL.
  • cid4digitos: Um vetor de códigos CID-4 para filtrar a coluna Localizacao_Primaria_4D. Padrão é NULL.
  • ano_inicio_triagem: Ano inicial para filtrar a coluna Ano_Triagem. Padrão é NULL.
  • ano_fim_triagem: Ano final para filtrar a coluna Ano_Triagem. Padrão é NULL.
  • ano_inicio_diagnostico: Ano inicial para filtrar a coluna Ano_Primeiro_Diagnostico. Padrão é NULL.
  • ano_fim_diagnostico: Ano final para filtrar a coluna Ano_Primeiro_Diagnostico. Padrão é NULL.
  • idade_inicio: Idade inicial para filtrar a coluna Idade. Padrão é NULL.
  • idade_fim: Idade final para filtrar a coluna Idade. Padrão é NULL.
  • tipo_de_caso: Filtro para a coluna Tipo_de_Caso (valores possíveis: “Analítico”, “Não Analítico”). Padrão é NULL.
  • sexo: Filtro para a coluna Sexo (valores possíveis: “Masculino”, “Feminino”). Padrão é NULL.
  • estado_residencia: Filtro para a coluna Estado_Residencia com siglas dos estados. Padrão é NULL.
  • uf_unidade_hospital: Filtro para a coluna UF_Unidade_Hospital com siglas dos estados. Padrão é NULL.
  • primeiro_tratamento_hospital: Filtro para a coluna Primeiro_Tratamento_Hospital. Padrão é NULL.
  • ano_inicio_tratamento: Ano inicial para filtrar a coluna Ano_Inicio_Tratamento. Padrão é NULL.
  • ano_fim_tratamento: Ano final para filtrar a coluna Ano_Inicio_Tratamento. Padrão é NULL.
  • origem_do_encaminhamento: Filtro para a coluna Origem_do_Encaminhamento. Padrão é NULL.
  • ano_do_banco_inicio: Ano inicial para filtrar a coluna Ano_do_Banco. Padrão é NULL.
  • ano_do_banco_fim: Ano final para filtrar a coluna Ano_do_Banco. Padrão é NULL.

3.2.2 Valor Retornado

Retorna o dataframe filtrado com base nos critérios fornecidos.

3.2.3 Exemplo de Uso

DADOS_FILTRADOS <- filtrar_banco(
  dados = dados_RHC_combinados,
  cid3digitos = "C44", 
  ano_inicio_triagem = 2018, 
  ano_fim_triagem = 2020,
  idade_inicio = 20, 
  idade_fim = 80,
  tipo_de_caso = "Analítico", 
  estado_residencia = c("RJ", "MG")
)

Neste exemplo, o dataframe será filtrado para incluir apenas os registros com o código CID-3 “C44”, triagem realizada entre 2018 e 2020, pacientes com idades entre 20 e 80 anos, com casos analíticos e residentes nos estados do Rio de Janeiro e Minas Gerais.

4 Dicionário de Variáveis - Registro Hospitalar de Câncer

Código RHC Novo nome das variáveis Descrição Categorias
TPCASO Tipo_de_Caso Tipo de caso (analítico ou não analítico). 1. Sim (Analítico); 2. Não (Não analítico)
SEXO Sexo Sexo do paciente. 1. Masculino; 2. Feminino
IDADE Idade Idade do paciente. Idade, em anos; valor igual a zero para crianças menores de 1 ano
LOCALNAS Local_Nascimento Local de nascimento do paciente. Sigla da UF de nascimento
RACACOR Raca_Cor Raça ou cor do paciente. 1. Branca; 2. Preta; 3. Amarela; 4. Parda; 5. Indígena; 9. Sem informação
INSTRUC Escolaridade Nível de educação do paciente. 1. Nenhuma; 2. Fundamental incompleto; 3. Fundamental completo; 4. Nível médio; 5. Nível superior incompleto; 9. Sem informação
CLIATEN Clinica_Atendimento Clínica onde o paciente foi atendido. Codificação segundo Tabela de Clínicas do SisRHC
Nome_Clinica_Atendimento Nome da clínica onde o paciente foi atendido.
CLITRAT Clinica_Tratamento Clínica onde o paciente foi tratado. Codificação segundo Tabela de Clínicas do SisRHC
Nome_Clinica_Tratamento Nome da clínica onde o paciente foi tratado.
HISTFAMC Historico_Familiar_Cancer Histórico de câncer na família. 1. Sim; 2. Não; 9. Sem informação
ALCOOLIS Consumo_Alcool Informação sobre o consumo de álcool pelo paciente. 1. Nunca; 2. Ex-consumidor; 3. Sim; 4. Não avaliado; 8. Não se aplica; 9. Sem informação
TABAGISM Tabagismo Informação sobre o tabagismo do paciente. 1. Nunca; 2. Ex-consumidor; 3. Sim; 4. Não avaliado; 8. Não se aplica; 9. Sem informação
ESTADRES Estado_Residencia Estado de residência do paciente. Sigla da UF de procedência
Nome_Estado_Residencia Nome do estado de residência do paciente.
PROCEDEN Codigo_Municipio_Residencia Código do município de residência do paciente. Tabela de municípios do IBGE
Nome_Municipio_Residencia Nome do município de residência do paciente.
ANOPRIDI Ano_Primeiro_Diagnostico Ano do primeiro diagnóstico do paciente. aaaa
ORIENC Origem_do_Encaminhamento Origem do encaminhamento para tratamento ou diagnóstico. 1. SUS; 2. Não SUS; 3. Veio por conta própria; 8. Não se aplica; 9. Sem informação
EXDIAG Exames_Relevantes_para_Diagnostico Exames relevantes para o diagnóstico do paciente. 1. Exame clínico e patologia clínica; 2. Exames por imagem; 3. Endoscopia e cirurgia exploradora; 4. Anatomia patológica; 9. Sem informação
ESTCONJ Estado_conjugal Estado conjugal do paciente. 1. Solteiro; 2. Casado; 3. Viúvo; 4. Separado judicialmente; 5. União consensual; 9. Sem informação
ANTRI Ano_Triagem Ano em que a triagem foi realizada. dd/mm/aaaa
DTPRICON Ano_Primeira_Consulta Ano da primeira consulta do paciente. aaaa
DIAGANT Diagnosticos_e_Tratamentos_Anterior Diagnósticos e tratamentos anteriores. 1. Sem diag./Sem trat.; 2. Com diag./Sem trat.; 3. Com diag./Com trat.; 4. Outros; 9. Sem informação
BASMAIMP Base_Mais_Importante_Diagnostico Base de maior importância para o diagnóstico. 1. Clínica; 2. Exame por imagem; 3. Marcadores tumorais; 4. Histologia do tumor primário; 9. Sem informação
LOCTUDET Localizacao_Primaria_3D Localização primária do tumor em 3D. Código da CID-O, 3 dígitos
CID3d Classificação Internacional de Doenças (CID) para a localização primária em 3D. Código da CID-O, 4 dígitos
Classificacao_CID_O Classificação do câncer segundo a CID-O (Classificação Internacional de Doenças Oncológicas).
LOCTUPRI Localizacao_Primaria_4D Localização primária do tumor em 4D.
CID4d Classificação Internacional de Doenças (CID) para a localização primária em 4D.
TIPOHIST Tipo_Histologico Tipo histológico do tumor. Codificação da morfologia do tumor pela CID-O
Tipo_Histologico_Completo Descrição completa do tipo histológico do tumor.
LATERALI Lateralidade Lateralidade do tumor. 1. Direita; 2. Esquerda; 3. Bilateral; 8. Não se aplica; 9. Sem informação
LOCTUPRO Local_Provavel_Tumor Local provável do tumor. CID-O, 4 dígitos
MAISUMTU Mais_de_Um_Tumor Indicação de se há mais de um tumor. 1. Não; 2. Sim; 3. Duvidoso
TNM Classificacao_TNM Classificação TNM do tumor. Codificação do estádio clínico segundo classificação TNM
ESTADIAM Estadiamento_Clinico Estadiamento clínico do câncer. Codificação do grupamento do estádio clínico segundo classificação TNM
Nome_Estadiamento_Clinico Nome do estadiamento clínico do câncer.
OUTROESTA Outro_Estadiamento_Clinico Outras informações de estadiamento clínico. Codificação do grupamento do estádio clínico segundo outras classificações que não a TNM
PTNM TNM_Patologico TNM patológico.
RZNTR Razao_Nao_Tratamento Razão pela qual o tratamento não foi realizado. 1. Recusa do tratamento; 2. Tratamento realizado fora; 3. Doença avançada; 4. Outras razões; 9. Sem informação
DTINITRT Ano_Inicio_Tratamento Ano de início do tratamento. aaaa
PRITRATH Primeiro_Tratamento_Hospital Primeiro tratamento realizado no hospital. 1. Nenhum; 2. Cirurgia; 3. Radioterapia; 4. Quimioterapia; 5. Hormonioterapia; 9. Sem informação
ESTDFIMT Estado_Doenca_Final_Tratamento Estado final após o tratamento. 1. Sem evidência da doença; 2. Remissão parcial; 3. Doença estável; 4. Doença em progressão; 9. Sem informação
CNES CNES_Hospital Código CNES do hospital. Codificação segundo tabela do Cadastro Nacional de Estabelecimentos de Saúde
Estabelecimento_Hospitalar Estabelecimento hospitalar onde o paciente foi tratado.
UFUH UF_Unidade_Hospital Unidade federativa do hospital. Sigla da Unidade da Federação da unidade hospitalar (IBGE)
Nome_Estado_Hospital Nome do estado onde o hospital está localizado.
MUUH Municipio_Unidade_Hospital Município onde o hospital está localizado. Tabela de municípios do IBGE
Nome_Municipio_Hospital Nome do município onde o hospital está localizado.
OCUPACAO Ocupacao_Paciente Ocupação do paciente. Codificação pela Tabela da Código Brasileiro de Ocupações
DTDIAGNO Data_Diagnostico Data do diagnóstico. dd/mm/aaaa
DTTRIAGE Data_Triagem Data da triagem. dd/mm/aaaa
DATAPRICON Data_Primeira_Consulta Data da primeira consulta. dd/mm/aaaa
DATAINITRT Data_Inicio_Primeiro_Tratamento Data de início do primeiro tratamento. dd/mm/aaaa
DATAOBITO Data_Obito Data de óbito do paciente. dd/mm/aaaa
VALOR_TOT Valor_Total Valor total associado ao tratamento.
BASDIAGSP Base_Mais_Importante_ Diagnostico_Sem_Patologicas Base mais importante para o diagnóstico - Sem Patológicas. 1. Exame clínico; 2. Recursos auxiliares não microscópicos; 3. Confirmação microscópica; 9. Sem informação
ESTADIAG Estadiamento_Clínico_ TNM_grupo_1985_1999 Estadiamento clínico TNM grupo de 1985 a 1999. Codificação do grupamento do estádio clínico segundo classificação TNM
Ano_do_Banco Ano em que os dados foram registrados no banco de dados. aaaa

5 Análise de qualidade dos dados

5.1 Completude dos Dados

A função analise_completude foi projetada para medir e avaliar a completude das variáveis em um conjunto de dados, gerando uma tabela detalhada e um gráfico que auxiliam na análise da qualidade do banco de dados. A avaliação é baseada no critério de incompletude proposto por Romero & Cunha, que define a incompletude como a proporção de informações ausentes ou ignoradas em campos específicos, categorizando-a em níveis de qualidade: excelente, bom, regular, ruim e muito ruim. A função calcula a proporção de dados ausentes para cada variável, fornecendo um escore percentual que facilita a visualização do preenchimento dos dados, classificando cada variável de acordo com sua completude.

# Supondo que você tenha um dataframe chamado dados_RHC_combinados,
# Use a função da seguinte forma:
#OBSERVAÇÃO: Sem atribuir a nenhum objeto.

analise_completude(dados_RHC_combinados)
Figura 2: Análise de completude dos dados no console do RStudio
Figura 2: Análise de completude dos dados no console do RStudio


Figura 3: Este gráfico apresenta a análise de completude dos dados de 678.953 registros de câncer no Registro Hospitalar de Câncer, coletados ao longo de quatro anos (2019-2022), evidenciando a proporção de dados ausentes em cada variável e sua classificação de qualidade, que varia entre as categorias: “Excelente” (menos de 5% de ausência), “Bom” (5% a 10%), “Regular” (10% a 20%), “Ruim” (20% a 50%) e “Muito Ruim” (acima de 50%).
Figura 3: Este gráfico apresenta a análise de completude dos dados de 678.953 registros de câncer no Registro Hospitalar de Câncer, coletados ao longo de quatro anos (2019-2022), evidenciando a proporção de dados ausentes em cada variável e sua classificação de qualidade, que varia entre as categorias: “Excelente” (menos de 5% de ausência), “Bom” (5% a 10%), “Regular” (10% a 20%), “Ruim” (20% a 50%) e “Muito Ruim” (acima de 50%).

5.1.1 analise_completude_ano( )

A função analise_completude_ano expande essa análise ao considerar a completude de cada variável por ano, com base na variável Ano_do_Banco, que indica o ano de registro dos dados. Esse desdobramento temporal permite observar variações na qualidade do preenchimento dos dados ao longo dos anos, sendo especialmente útil para estudos longitudinais

Esta função calcula e avalia a completude de cada variável por ano, distribuindo a proporção de completude pela variável Ano_do_Banco. A completude é exibida junto com uma classificação baseada no escore de Romero & Cunha. Referência: ROMERO, Dalia E.; CUNHA, Cynthia Braga da. Avaliação da qualidade das variáveis sócio-econômicas e demográficas dos óbitos de crianças menores de um ano registrados no Sistema de Informações sobre Mortalidade do Brasil (1996/2001). Cadernos de Saúde Pública, v. 22, p. 673-681, 2006.”

# Supondo que você tenha um dataframe chamado dados_RHC_combinados,
# Use a função da seguinte forma:

Nome_da_Sua_Tabela_de_Completud_ano <- analise_completude_ano(dados_RHC_combinados)

# Exibir a tabela
print(Nome_da_Sua_Tabela_de_Completud_ano)
Figura 4: Análise de completude dos dados, por ano, no console do RStudio
Figura 4: Análise de completude dos dados, por ano, no console do RStudio

5.2 Verificação de Inconsistências nos Dados

A análise de inconsistências nos dados de registros hospitalares de câncer visa garantir a confiabilidade dos dados para pesquisa. A função verificar_codigos_inconsistentes identifica códigos incorretos ou inexistentes e retorna o número e a proporção desses códigos inconsistentes em cada variável. Já a função verificar_idades_inconsistentes verifica a plausibilidade das idades registradas, considerando inconsistentes idades menores que zero ou maiores que 150 anos. Ambas as funções calculam a proporção de inconsistências como uma porcentagem dos dados válidos, facilitando a interpretação dos resultados.

Para dados temporais, a função verificar_anos_inconsistentes assegura a coerência cronológica de eventos como diagnóstico, triagem, consulta inicial e início do tratamento, gerando uma tabela com o número de inconsistências para cada verificação cronológica. Similarmente, verificar_datas_inconsistentes verifica a ordem lógica das datas e aplica uma margem de 12 meses entre eventos como diagnóstico e tratamento. Além disso, a função verificar_cancer_sexo_inconsistentes assegura que os diagnósticos de câncer estejam condizentes com o sexo do paciente, conforme a CID-O. Estas funções são fundamentadas em critérios de referência de estudos sobre completude e consistência, assegurando dados íntegros para análise epidemiológica.

5.2.1 verificar_anos_inconsistentes( )

A função verificar_anos_inconsistentes identifica inconsistências cronológicas nos anos registrados em um dataframe. As regras incluem: o ano do primeiro diagnóstico deve ser igual ou posterior aos anos da triagem e da primeira consulta; e o ano de início do tratamento deve ser igual ou posterior aos anos do primeiro diagnóstico, triagem e primeira consulta. A função gera um dataframe com o número e a proporção (%) de inconsistências encontradas, calculando a proporção ao dividir o número de inconsistências pelo total de registros.

As verificações incluem:

“Ano_Primeiro_Diagnostico” deve ser igual ou posterior a “Ano_Primeira_Consulta”

“Ano_Primeiro_Diagnostico” deve ser igual ou posterior a “Ano_Triagem”

“Ano_Inicio_Tratamento” deve ser igual ou posterior a “Ano_Primeira_Consulta”

“Ano_Inicio_Tratamento” deve ser igual ou posterior a “Ano_Triagem”

“Ano_Inicio_Tratamento” deve ser igual ou posterior a “Ano_Primeiro_Diagnostico” A função retorna um dataframe com o quantitativo e a proporção de inconsistências por verificação.

# Escreva o nome do dataframe e execute a função. Se seu dataframe for "dados_RHC_combinados", use a função como:

resultados_anos_inconsistentes <- verificar_anos_inconsistentes(dados_RHC_combinados)

# Exibir

print(resultados_anos_inconsistentes)
Figura 5: A figura mostra as inconsistências cronológicas nos anos registrados em um dataframe, por ano, no console do RStudio
Figura 5: A figura mostra as inconsistências cronológicas nos anos registrados em um dataframe, por ano, no console do RStudio

5.2.2 verificar_cancer_sexo_inconsistentes( )

A função verificar_cancer_sexo_inconsistentes verifica se os códigos CID-O de cânceres relacionados ao sexo estão corretos em um dataframe de registros hospitalares de câncer. Especificamente, os códigos CID-O de cânceres femininos (C53 a C57, C51, C52) devem estar associados ao sexo “Feminino”, enquanto os códigos de cânceres masculinos (C60, C61, C62) devem estar associados ao sexo “Masculino”. A função gera um dataframe com o número e a proporção (%) de inconsistências, calculada dividindo-se o total de inconsistências pelo número total de registros. Esse método foi desenvolvido com base em estudos de Pinto e colaboradores e de Romero e Cunha, que avaliaram a completude e consistência dos registros de câncer no Brasil, garantindo assim rigor na integridade dos dados essenciais para pesquisas epidemiológicas.

As verificações incluem:

CID-O de cânceres femininos (C53, C54, C55, C56, C57, C51, C52) devem corresponder ao sexo “Feminino”

CID-O de cânceres masculinos (C60, C61, C62) devem corresponder ao sexo “Masculino” A função retorna um dataframe com o quantitativo e a proporção de inconsistências por verificação.

# Escreva o nome do dataframe e execute a função. Se seu dataframe for "dados_RHC_combinados", use a função como:

resultados_cancer_sexo_inconsistentes <- verificar_cancer_sexo_inconsistentes(dados_RHC_combinados)

# Exibir

print(resultados_cancer_sexo_inconsistentes)
Figura 5: A figura mostra as inconsistências dos CID-O relacionado ao sexo nos registrados em um dataframe, no console do RStudio
Figura 5: A figura mostra as inconsistências dos CID-O relacionado ao sexo nos registrados em um dataframe, no console do RStudio

5.2.3 verificar_codigos_inconsistentes( )

A função verificar_codigos_inconsistentes identifica códigos inválidos ou formatos incorretos em dados de registros hospitalares de câncer, comparando com a Ficha de Registro de Tumor. Ela retorna um dataframe com o número e a proporção (%) de códigos inconsistentes por variável, calculada dividindo o total de inconsistências pelo número de valores válidos (não-NA) e multiplicando o resultado por 100. A função retorna um dataframe com o quantitativo e a proporção de códigos inconsistentes por variável.

# Escreva o nome do dataframe e execute a função. Se seu dataframe for "dados_RHC_combinados", use a função como:

resultados_codigos_inconsistentes <- verificar_codigos_inconsistentes(dados_RHC_combinados)

# Exibir

print(resultados_codigos_inconsistentes)
Figura 5: A figura mostra códigos inválidos ou formatos incorretos em dados de registros hospitalares de câncer nos registrados em um dataframe, no console do RStudio
Figura 5: A figura mostra códigos inválidos ou formatos incorretos em dados de registros hospitalares de câncer nos registrados em um dataframe, no console do RStudio

5.2.4 verificar_datas_inconsistentes( )

A função verificar_datas_inconsistentes analisa inconsistências cronológicas em datas de registros hospitalares de câncer, retornando um dataframe com o número e a porcentagem (%) de inconsistências por verificação. As verificações incluem sequências lógicas, como a data de diagnóstico ser posterior à triagem e consulta, e a data de óbito ser posterior ao diagnóstico e ao início do tratamento. Qualquer desvio dessa ordem é marcado como inconsistente. A função exige uma diferença mínima de 12 meses (365 dias) para considerar uma data como inconsistente.

As verificações incluem:

“Data_Diagnostico” deve ser posterior a “Data_Primeira_Consulta”

“Data_Diagnostico” deve ser posterior a “Data_Triagem”

“Data_Inicio_Primeiro_Tratamento” deve ser posterior a “Data_Primeira_Consulta”

“Data_Inicio_Primeiro_Tratamento” deve ser posterior a “Data_Triagem”

“Data_Inicio_Primeiro_Tratamento” deve ser posterior a “Data_Diagnostico”

“Data_Obito” deve ser posterior a “Data_Primeira_Consulta”

“Data_Obito” deve ser posterior a “Data_Triagem”

“Data_Obito” deve ser posterior a “Data_Diagnostico”

“Data_Obito” deve ser posterior a “Data_Inicio_Primeiro_Tratamento” A função considera uma diferença mínima de 12 meses (365 dias) para ser considerada inconsistente.

# Escreva o nome do dataframe e execute a função. Se seu dataframe for "dados_RHC_combinados", use a função como:

resultados_datas_inconsistentes <- verificar_datas_inconsistentes(dados_RHC_combinados)

# Exibir

print(resultados_datas_inconsistentes)
Figura 5: A figura mostra inconsistências cronológicas em datas de registros hospitalares de câncer nos registrados em um dataframe, no console do RStudio
Figura 5: A figura mostra inconsistências cronológicas em datas de registros hospitalares de câncer nos registrados em um dataframe, no console do RStudio

5.2.5 verificar_idades_invalidas( )

A função verificar_idades_inconsistentes identifica idades inválidas na coluna “Idade” de um dataframe de registro hospitalar de câncer, considerando inválidas idades menores que zero ou maiores que 150 anos. Ela retorna um dataframe com o número e a proporção (%) de idades inválidas, calculada pela divisão do total de idades inválidas pelo total de valores não nulos na coluna. A função retorna um dataframe com o quantitativo e a proporção de idades inválidas.

# Escreva o nome do dataframe e execute a função. Se seu dataframe for "dados_RHC_combinados", use a função como:

resultados_idades_invalidas <- verificar_idades_inconsistentes(dados_RHC_combinados)

# Exibir

print(resultados_idades_invalidas)
Figura 5: A figura mostra idades inválidas na coluna “Idade” de um dataframe de registro hospitalar de câncer nos registrados em um dataframe, no console do RStudio
Figura 5: A figura mostra idades inválidas na coluna “Idade” de um dataframe de registro hospitalar de câncer nos registrados em um dataframe, no console do RStudio

5.2.6 analise_qualidade_dos_dados( )

Esta função executa uma análise completa de qualidade dos dados, chamando várias funções que verificam a completude e a inconsistência dos dados (códigos inexistentes, idades inconsistentes, anos inconsistentes, datas inconsistentes e inconsistências entre câncer e sexo) em um só comando.

Funçoes acionada pela analise_qualidade_dos_dados( ):

analise_completude( )

verificar_anos_inconsistentes( )

verificar_cancer_sexo_inconsistentes( )

verificar_codigos_inconsistentes( )

verificar_datas_inconsistentes( )

verificar_idades_inconsistentes( )

# Exemplo de uso:
#OBSERVAÇÃO: Sem atribuir a nenhum objeto.

analise_qualidade_dos_dados(dados_RHC_combinados)